The present invention relates to position encoders and, more particularly, to position encoders used to track position in robotic systems and the like. A major objective of the present invention is to provide an improved incremental position encoder which provides for local initialization.
Robots and robotic systems are becoming increasingly important in a wide variety of fields, being well suited for tasks requiring many repetitions, high-precision, and/or other capabilities, as well as providing for performance in hazardous environments. Robot joints and other positioning servomechanisms require position encoders so that a present position can be compared with a target position to determine the change of position required for a particular operation.
Position encoders can be classified as incremental, absolute and quasi-absolute. Typically, an incremental encoder includes a wheel with tally marks arranged in a circular array about the wheel. A sensor detects the passage of tally marks as the orientation of the wheel is changed. Generally, two sensors are arranged in quadrature so that the direction as well as the magnitude of the orientation change can be determined. The direction determination can be used to select the sign of a bidirectional counter which tracks motion as a function of the passage of tally marks.
An incremental encoder must be initialized relative to an origin to provide information as to absolute position. A method used in some plotters and printers is to slowly traverse the mechanism to one end and trip a micro-switch or opto-sensor. However, in many robotics a return to an origin can be unaesthetic, wasteful, and even dangerous since the position of the joint being initialized may be unknown. This is especially true for multi-axis robots where the position of one joint is dependent on the, also unknown, positions of other joints.
Absolute position encoders provide a readout of absolute position, thereby avoiding the problem with initialization movements that plagues incremental encoders. Gray encoders provide absolute position reading using multiple tracks of marks and a respective sensor for each track. The marks are designed so that each absolute position is represented by a unique combination of sensor outputs. The number of absolute positions that can be differentiated is limited to 2.sup.n, where n is the number of tracks. A typical 10-sensor Gray encoder can distinguish 1024 positions. A larger number of positions can be distinguished by using more tracks and sensors. However, the increased number of tracks adds to the manufacturing precision of the encoder since all of the tracks must align with each other, thus making the encoder uneconomical. The large number of sensors required also increases the cost of Gray encoders.
Quasi-absolute encoders require fewer sensors and tracks to provide equivalent position differentiations at the expense of requiring up to one revolution of motion for initialization. In effect, a quasi-absolute encoder distinguishes a certain number of absolute positions and provides additional resolution by interpolating between these positions in a manner similar to an incremental encoder. For example, U.S. Pat. No. 4,041,483 to Groff discloses a quasi-absolute "Groff" encoder which uses six sensors to read two gears, each with two tracks to distinguish 1024 positions. One track of each gear includes an index mark subtending a predetermined angle to indicate the orientation of that gear. The other track of each gear provides incremental interpolation of position for that gear. The gears have different numbers of teeth so that the index marks process relative to each other during successive revolutions. The spatial phase angle between index marks provides a gross representation of absolute position. Distance from one of the (32) absolute positions is measured incrementally by counting (up to 32) tally marks.
The primary disadvantages of the absolute and quasi-absolute encoders is the limitated number of states that can be distinguished. An incremental encoder can distinguish as many states as can be counted by the incorporated counter using a pair of sensors and a single wheel. The encoder wheel can turn as many times as required to cover a full range of motion. With proper gearing, any level of precision can be accommodated.
Theoretically, absolute and quasi-absolute encoders can be scaled and/or used in tandem to distinguish any number of states. However, the bulk, complexity and cost of providing an absolute encoder which distinguishes 1,000,000 states preclude its use in many applications. A comparable limitation applies to the quasi-absolute encoders even though fewer sensors and tracks are required. For example, the Groff encoder requires marks which subtend very precisely defined angles. Providing a Groff encoder which could distinguish 1,000,000 positions by increasing the differentiation provided by the incremental tracks would require very strict manufacturing tolerances to be met. These strict manufacturing tolerances would require high costs and quality control problems. The complexity of the logic and track patterning required for a 1,000,000+ state Groff encoder could present significant design challenges.
What is needed is a position encoder which combines the range and precision available using incremental encoders with the convenience of absolute and quasi-absolute encoders. In other words, an encoder is needed which avoids the bulk, expense and complexity of absolute encoders, and also avoids the need for a blind return to an initialization position required of incremental encoders. Preferably, these needs are met in a system which utilizes relative few sensors and requires only moderate manufacturing tolerances.